package com.soil.code.generation.domain.code.constant;
/**
 * @author zeno
 */
public enum CodeTemplateEnum{

  /** 持久层对象 */
  PO("PersistenceObject.java.ftl");

  CodeTemplateEnum( String fileName) {
    this.fileName = fileName;
  }

  /** 代码模板文件名 */
  private final String fileName;

  /**
   * 获取枚举编码值
   *
   * @return 枚举编码值
   */
  public String fileName() {
    return fileName;
  }

  /**
   * 根据 枚举编码 获取枚举对象
   *
   * @param fileName 枚举编码
   *
   * @return 枚举对象
   */
  public CodeTemplateEnum of( String fileName ) {

    for (CodeTemplateEnum e : CodeTemplateEnum.values()) {
      if (e.fileName.equalsIgnoreCase(fileName)) {
        return e;
      }
    }

    return null;
  }
}
